package com.yuke.cloud.service.wmc.service;

import com.yuke.cloud.common.core.support.IService;
import com.yuke.cloud.service.api.pmc.dto.ProdSpecInfoExDto;
import com.yuke.cloud.service.api.wmc.dto.StorageDto;
import com.yuke.cloud.service.api.wmc.dto.StorageSpecInfoDto;
import com.yuke.cloud.service.wmc.entity.WmsStorage;

import java.util.List;


/**
 * Created by zys on 2018/12/14.
 */
public interface WmsStorageSpecService extends IService<WmsStorage> {
    List<StorageSpecInfoDto> getAppStorageSpecByCondition(StorageSpecInfoDto storageSpecInfoDto, Long shopId);
    List<StorageSpecInfoDto> getListRecommend();
    List<StorageSpecInfoDto> getStorageInfoByCategoryIds(List<Long> categoryId, Long shopId);
    List<StorageSpecInfoDto> getStorageInfoBySpecIds(List<Long> specIds, Long shopId);
    List<ProdSpecInfoExDto> getStorageSpecBySpecIds(Long shopId, List<Long> specIds, Byte cartType);
    List<StorageSpecInfoDto> getProdStorageSpecBySpecIds(List<Long> specIds, Long shopId);
    List<StorageSpecInfoDto> getProdSpecInfo(List<Long> specIds);
    List<ProdSpecInfoExDto> getStorageSpecByStorageIds(List<Long> storageIds,Byte cartType);
    List<StorageSpecInfoDto> getAllStorageInfoBySpecIds(List<Long> specIds, Long shopId);
    List<StorageSpecInfoDto> getAllStorageBySpecIds(List<Long> specIds, Long shopId);
    List<StorageSpecInfoDto> getProdSpecGoods(StorageSpecInfoDto storageSpecInfoDto);
    List<StorageSpecInfoDto> getWmsCategoryBrand(StorageSpecInfoDto prodCategoryBrandDto, Long shopId);
    List<StorageSpecInfoDto> getBrandsByCategorys(List<Long> categoryId,String specName,Byte saleType,Long warehouseId);
    List<StorageSpecInfoDto> getSpecInfoExtra(Long shopId, List<StorageSpecInfoDto> storageSpecInfoDtos, Byte saleType, Long warehouseId);
    List<StorageSpecInfoDto> getStorageSpecExtra(List<StorageSpecInfoDto> storageSpecInfoDtos);
    List<StorageDto> selectWmsSpecsByProductId(StorageDto storageDto);
    List<StorageSpecInfoDto> getProductSpecByCondition(StorageSpecInfoDto storageSpecInfoDto);
}
